package com.csea.app.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.csea.app.model.vo.repository.RepositoryCreateReqVO;

import com.csea.app.model.vo.repository.RepositoryRspVO;
import com.csea.app.model.vo.repository.RepositoryUpdateReqVO;
import com.csea.common.domain.dos.UserRepositoryDo;
import com.csea.common.utils.Response;

import java.util.List;

/**
 * 用户仓库服务
 *
 * @author xiyou
 */
public interface UserRepositoryService extends IService<UserRepositoryDo> {
    /**
     * 创建仓库
     * @param reqVO 创建请求
     */
    Response<RepositoryRspVO> createRepository(RepositoryCreateReqVO reqVO);
    /**
     * 删除仓库
     * @param repositoryId 仓库id
     */
    Response<String> deleteRepository(Integer repositoryId);
    /**
     * 更新仓库
     * @param reqVO 更新请求
     */
    Response<RepositoryRspVO> updateRepository(RepositoryUpdateReqVO reqVO);
    /**
     * 根据用户ID查询仓库
     * @param userId userId
     */
    Response<List<RepositoryRspVO>> listUserRepositories(Integer userId);
}